iT邦幫忙

2024 iThome 鐵人賽

DAY 23
0
AI/ ML & Data

From Python Beginner To AI Engineer系列 第 24

索引值不一定要是整數

  • 分享至 

  • xImage
  •  

在使用列表時,索引值必須是按照順序的整數:

>>> arr = [2, 3, 5]
>>> arr[2] = 7
>>> arr[3] = 9
---------------------------------------------------------------------------
IndexError                                Traceback (most recent call last)
Cell In[1], line 3
      1 arr = [2, 3, 5]
      2 arr[2] = 7
----> 3 arr[3] = 9

IndexError: list assignment index out of range

如果超出範圍,會發生 IndexError。此外,索引值也不能是整數以外的型態:

>>> arr["hello"]
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
Cell In[2], line 1
----> 1 arr["hello"]

TypeError: list indices must be integers or slices, not str

如果在索引值方面需要更有彈性的話,可以改用字典 (dict) 來存放資料:

>>> data = {
>>>     "Penut": 9487,
>>>     3.14: 5.67,
>>> }

dict 使用大括號 {} 將資料包起來,每一筆資料用 key: value 的形式來表達,冒號前面為索引值,冒號後面為資料內容。因此這個 data 就能以任意型態的索引值來存取:

>>> print(data["Penut"])
>>> print(data[3.14])
>>> data["Chen"] = 1234
>>> print(data)
9487
5.67
{'Penut': 9487, 3.14: 5.67, 'Chen': 1234}

用字典來存放資料,提供開發者更多彈性的選擇。


上一篇
列表進階觀念
下一篇
來點更美麗的字串
系列文
From Python Beginner To AI Engineer31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言